Merge from gdk-pixbuf stable.
authorFederico Mena Quintero <federico@ximian.com>
Fri, 25 Jan 2002 21:38:13 +0000 (21:38 +0000)
committerFederico Mena Quintero <federico@src.gnome.org>
Fri, 25 Jan 2002 21:38:13 +0000 (21:38 +0000)
2002-01-25  Federico Mena Quintero  <federico@ximian.com>

Merge from gdk-pixbuf stable.

* gdk-pixbuf-xlib-drawable.c (rgb565msb): Fixed the endianness
conversion --- swap the individual 16 bit values instead of taking
everying as a 32 bit value.
(rgb565lsb): Likewise.
(rgb555lsb): Likewise.
(rgb555msb): Likewise.

contrib/gdk-pixbuf-xlib/ChangeLog
contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c

index f29c11f5f7f7c6eb1b88956ec66e6e8f3f6beaca..ca15378d86c64c546367fd88fab8ce68b715a958 100644 (file)
@@ -1,3 +1,14 @@
+2002-01-25  Federico Mena Quintero  <federico@ximian.com>
+
+       Merge from gdk-pixbuf stable.
+
+       * gdk-pixbuf-xlib-drawable.c (rgb565msb): Fixed the endianness
+       conversion --- swap the individual 16 bit values instead of taking
+       everying as a 32 bit value.
+       (rgb565lsb): Likewise.
+       (rgb555lsb): Likewise.
+       (rgb555msb): Likewise.
+
 2001-11-26  Akira TAGOH  <tagoh@redhat.com>
 
        * Makefile.am (libgdk_pixbuf_xlib_1_3_la_LDFLAGS):
index 9e007bdb492cb80100927179f6aa18522b6612ef..e84d9763812406b4f112839aa790f48aec00b4b4 100644 (file)
@@ -365,7 +365,7 @@ rgb565lsb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colormap
                                | (data & 0x1f0000) >> 5 | (data & 0x1c0000) >> 10;
 #else
                        /* swap endianness first */
-                       data = s[0] | s[1] << 8 | s[2] << 16 | s[3] << 24;
+                       data = s[1] | s[0] << 8 | s[3] << 16 | s[2] << 24;
                        s += 4;
                        *o++ = (data & 0xf800) | (data & 0xe000) >> 5
                                | (data & 0x7e0) >> 3 | (data & 0x600) >> 9;
@@ -428,7 +428,7 @@ rgb565msb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colormap
                        register guint32 data;
 #ifdef LITTLE
                        /* swap endianness first */
-                       data = s[0] | s[1] << 8 | s[2] << 16 | s[3] << 24;
+                       data = s[1] | s[0] << 8 | s[3] << 16 | s[2] << 24;
                        s += 4;
                        *o++ = (data & 0xf800) >> 8 | (data & 0xe000) >> 13
                                | (data & 0x7e0) << 5 | (data & 0x600) >> 1;
@@ -617,7 +617,7 @@ rgb555lsb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colormap
                                | (data & 0x1f0000) >> 5 | (data & 0x1c0000) >> 10;
 #else
                        /* swap endianness first */
-                       data = s[0] | s[1] << 8 | s[2] << 16 | s[3] << 24;
+                       data = s[1] | s[0] << 8 | s[3] << 16 | s[2] << 24;
                        s += 4;
                        *o++ = (data & 0x7c00) << 1 | (data & 0x7000) >> 4
                                | (data & 0x3e0) >> 2 | (data & 0x380) >> 7;
@@ -676,7 +676,7 @@ rgb555msb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colormap
                        register guint32 data;
 #ifdef LITTLE
                        /* swap endianness first */
-                       data = s[0] | s[1] << 8 | s[2] << 16 | s[3] << 24;
+                       data = s[1] | s[0] << 8 | s[3] << 16 | s[2] << 24;
                        s += 4;
                        *o++ = (data & 0x7c00) >> 7 | (data & 0x7000) >> 12
                                | (data & 0x3e0) << 6 | (data & 0x380) << 1;